export default {
    //1、state： 统一定义公共数据（类似于data(){return {a:1, b:2，xxxxxx}}）
    state: {
        //菜单栏的折叠状态  默认：未折叠
        isCollapse: false,
        // 面包屑菜单数据
        tabsList: [
            //面包屑必须有一个首页
            {
                path: "/",
                label: "首页",
                name: "firstPage",
                icon: "s-home",
                url: "Home/Home"
            }
        ]
    },
    //2、mutations(突变) ： 使用它来修改数据(类似于methods)
    mutations: {
        //变更侧边栏折叠状态， 每次触发 取反
        collapseChange(state) {
            state.isCollapse = !state.isCollapse;
        },
        //添加菜单数据到面包屑
        changeMenu(state, menuItem) {
            //因为已经存在首页了，如果不是首页才添加，否则不添加
            if (menuItem.name != "main") {
                /**
                 * 如果已经存在相同的菜单项，则不处理。不存在则添加到面包屑
                 */
                const index = state.tabsList.findIndex(item => item.name === menuItem.name)
                if (index == -1) {
                    state.tabsList.push(menuItem);
                }
            }
        },
        //关闭tag标签
        closeTag(state,index) {
            //const index = state.tabsList.findIndex(item => item.name === tag.name)
            console.log("关闭tag-- ",index);
            //删除对应的标签
            state.tabsList.splice(index, 1);
    }
}
    //3、getters： 类似于computed(计算属性，对现有的状态进行计算得到新的数据-------派生 )
    //4、actions： 发起异步请求
    //5、modules： 模块拆分
}